#define _CRT_SECURE_NO_WARNINGS 
#include<stdio.h>
void test1(int arr[][5], int x, int y)
//void test1(int(*p)[5], int x, int y)
{
	for (int i = 0; i < x; i++)
	{
		for (int j = 0; j < y; j++)
		{
			//printf("%d ", *(*(p + i) + j));
			printf("%d ", arr[i][j]);
		}
		printf("\n");
	}
	printf("\n");
}
void test2(int* p[5], int x, int y)
{
	for (int i = 0; i < x; i++)
	{
		for (int j = 0; j < y; j++)
		{
			printf("%d ", p[i][j]);
			//printf("%d ", *(*(p + i) + j));
		}
		printf("\n");
	}
}
int main()
{
	int arr1[5] = { 1,2,3,0,0 };
	int arr2[5] = { 4,5,6,0,0 };
	int arr3[5] = { 7,8,9,0,0 };
	int arr4[3][5] = { {1,2,3,0,0},{4,5,6,0,0},{7,8,9,0,0} };
	int* (p[3])[5] = { arr1,arr2,arr3 };
	test1(arr4, 3, 5);
	test2(p, 3, 5);
	return 0;
} 

//int main()
//{
//	int arr[3][5] = {{1,2,3,0,0},{4,5,6,0,0},{ 7,8,9,0,0 } };
//	printf("%p\n",&arr[0]);
//	printf("%p\n",&arr[0][0]);
//	printf("%p\n", &arr);
//	return 0;
//}
//int main()
//{
//	int arr1[5] = { 1,2,3,4,5 };
//	int arr2[5] = { 2,2,3,4,5 };
//	int arr3[5] = { 3,2,3,4,5 };
//	int(*p1)[5] = &arr1;
//	int(*p2)[5] = &arr2;
//	int(*p3)[5] = &arr3;
//	printf("%p\n", p1);
//	printf("%p\n", p2);
//	printf("%p\n", p3);
//	//printf("%p\n", arr1);
//	//printf("%p\n", arr2);
//	//printf("%p\n", arr3);
//	int* (arr4[3])[5] = { p1,p2,p3 };
//	printf("%p\n", *arr4[0]);
//	printf("%p\n", (*arr4)[1]);
//	printf("%p\n", (*arr4)[2]);
//	return 0;
//}